<?php

namespace Admin\Model;

use Zend\InputFilter\InputFilter;
use Zend\InputFilter\Factory as InputFactory;
use Zend\InputFilter\InputFilterAwareInterface;
use Zend\InputFilter\InputFilterInterface;

class Hocsinh implements InputFilterAwareInterface
{
    public $id;
    public $mahs;
    public $tenhs;
	public $ngaysinh;
	public $gioitinh;
	public $lop;
	public $tenlop;
	

    protected $inputFilter;

    /**
     * Used by ResultSet to pass each database row to the entity
     */
    public function exchangeArray($data)
    {
        $this->id     = (isset($data['id'])) ? $data['id'] : null;
        $this->mahs = (isset($data['mahs'])) ? $data['mahs'] : null;
        $this->tenhs  = (isset($data['tenhs'])) ? $data['tenhs'] : null;
		$this->ngaysinh  = (isset($data['ngaysinh'])) ? $data['ngaysinh'] : null;
		$this->gioitinh  = (isset($data['gioitinh'])) ? $data['gioitinh'] : null;
		$this->lop  = (isset($data['lop'])) ? $data['lop'] : null;
		$this->tenlop  = (isset($data['tenlop'])) ? $data['tenlop'] : null;
    }

    public function getArrayCopy()
    {
        return get_object_vars($this);
    }

    public function setInputFilter(InputFilterInterface $inputFilter)
    {
        throw new \Exception("Not used");
    }

    public function getInputFilter()
    {
        if (!$this->inputFilter) {
            $inputFilter = new InputFilter();

            $factory = new InputFactory();

            $inputFilter->add($factory->createInput(array(
                'name'     => 'id',
                'required' => true,
                'filters'  => array(
                    array('name' => 'Int'),
                ),
            )));

            $inputFilter->add($factory->createInput(array(
                'name'     => 'mahs',
                'required' => true,
                'filters'  => array(
                    array('name' => 'StripTags'),
                    array('name' => 'StringTrim'),
                ),
                'validators' => array(
                    array(
                        'name'    => 'StringLength',
                        'options' => array(
                            'encoding' => 'UTF-8',
                            'min'      => 2,
                            'max'      => 10,
							'messages' => array(
                                'stringLengthTooShort' => 'Vui lòng nhập vào từ 2-10 kí tự!', 
                                'stringLengthTooLong' => 'Vui lòng nhập vào từ 2-10 kí tự!' 
                            ),
                        ),
                    ),
                ),
            )));
			/*
            $inputFilter->add($factory->createInput(array(
                'name'     => 'tenhs',
                'required' => true,
                'filters'  => array(
                    array('name' => 'StripTags'),
                    array('name' => 'StringTrim'),
                ),
                'validators' => array(
                    array(
                        'name'    => 'StringLength',
                        'options' => array(
                            'encoding' => 'UTF-8',
                            'min'      => 4,
                            'max'      => 16,
							'messages' => array(
                                'stringLengthTooShort' => 'Vui lòng nhập vào từ 4-16 kí tự!', 
                                'stringLengthTooLong' => 'Vui lòng nhập vào từ 4-16 kí tự!' 
                            ),
                        ),
                    ),
                ),
            )));
			*/
			$inputFilter->add($factory->createInput(array(
                'name'     => 'ngaysinh',
                'required' => true,
                
            )));
			$inputFilter->add($factory->createInput(array(
                'name'     => 'tenhs',
                'required' => true,
                
            )));
			$inputFilter->add($factory->createInput(array(
                'name'     => 'gioitinh',
                'required' => true,
                
            )));
			$inputFilter->add($factory->createInput(array(
                'name'     => 'lop',
                'required' => true,
                
            )));
			
			

            $this->inputFilter = $inputFilter;        
        }

        return $this->inputFilter;
    }
}
